#ifndef MsnEvent_H
#define MsnEvent_H

#include <wx/event.h>

//server event
BEGIN_DECLARE_EVENT_TYPES()

	DECLARE_EVENT_TYPE(EVT_MSN_SERVER_CONNECTION_FAILED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_SERVER_CONNECTION_BROKEN, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_SERVER_AUTHETICATION_FAILED, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_SERVER_SIGNED_IN, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_SERVER_SIGNED_OUT, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_SYNCHRONIZATION_FINISHED, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_USER_STATUS_CHANGED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_USER_NAME_CHANGED, -1)
	

	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_STATUS_CHANGED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_NAME_CHANGED, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_ADDED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_ADDED_TO_GROUP, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_ADDED_TO_REVERSED_LIST, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_ADDED_TO_BLOCKED_LIST, -1)
	
	
	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_REMOVED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_REMOVED_FROM_GROUP, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_CONTACT_REMOVED_FROM_BLOCKED_LIST, -1)


	DECLARE_EVENT_TYPE(EVT_MSN_GROUP_ADDED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_GROUP_REMOVED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_GROUP_RENAMED, -1)

    
END_DECLARE_EVENT_TYPES()


//session event
BEGIN_DECLARE_EVENT_TYPES()

	DECLARE_EVENT_TYPE(EVT_MSN_FILE_TRANSFER_STARTED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_FILE_TRANSFER_UPDATED, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_FILE_TRANSFER_CANCELLED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_FILE_TRANSFER_FAILED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_FILE_TRANSFER_DONE, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_FILE_TRANSFER_SENT, -1)
	
	DECLARE_EVENT_TYPE(EVT_MSN_FILE_INVITE_SENT, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_FILE_INVITE_RECEIVED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_FILE_ACCEPT_RECEIVED, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_INVITATION_MESSAGE_RECEIVED, -1)
					

    DECLARE_EVENT_TYPE(EVT_MSN_INSTANT_MESSAGE_RECEIVED, -1)

    DECLARE_EVENT_TYPE(EVT_MSN_CONTROL_MESSAGE_RECEIVED, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_INSTANT_MESSAGE_FAILED, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_SESSION_CONNECTION_BROKEN, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_SESSION_CONNECTION_FAILED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_SESSION_CONNECTION_READY, -1)

	DECLARE_EVENT_TYPE(EVT_MSN_SESSION_CONNECTION_JOINED, -1)
   

	DECLARE_EVENT_TYPE(EVT_MSN_SESSION_CONTACT_JOINED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_SESSION_CONTACT_LISTED, -1)
	DECLARE_EVENT_TYPE(EVT_MSN_SESSION_CONTACT_LEFT, -1)


END_DECLARE_EVENT_TYPES()

#endif


